<template>
  <div class="about-main">
    <div class="info">
      <div class="info-item">
        <p class="info-title">名称：</p>
        <svg>
          <text y="25">阿柒</text>
        </svg>
      </div>
      <div class="info-item">
        <p class="info-title">性别：</p>
        <svg>
          <text y="25">男</text>
        </svg>
      </div>
      <div class="info-item">
        <p class="info-title">年龄：</p>
        <svg>
          <text y="25">23</text>
        </svg>
      </div>
      <div class="info-item">
        <p class="info-title">地点：</p>
        <svg>
          <text y="25">上海</text>
        </svg>
      </div>
      <div class="info-item">
        <p class="info-title">学历：</p>
        <svg>
          <text y="25">211本硕</text>
        </svg>
      </div>
      <div class="info-item" style="margin-bottom: 10px">
        <p class="info-title">QQ：</p>
        <svg>
          <text y="25">1772972850</text>
        </svg>
      </div>
    </div>
    <div class="ghost"></div>
    <div class="reason">
      <fieldset>
        <legend>WHY BLOG</legend>
        <p>为什么写博客？</p>
        <p style="padding-left: 30px">1. 知识分享、探讨</p>
        <p style="padding-left: 30px">2. 总结知识，加深理解</p>
        <p style="padding-left: 30px">3. 对不常用知识做个汇总，方便日后查阅</p>
        <p style="padding-left: 30px">4. 有自己的网站是一件很酷的事</p>
        <p>我与我周旋久，宁做我。保持专注，踏实学习，享受生活，寻觅新的机会...</p>
      </fieldset>
    </div>
  </div>
</template>

<script lang="ts">
export default {
  name: "About"
}
</script>

<style scoped>
.info-title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(45deg, #000 0%, #000 25%, transparent 25%, transparent 50%, #000 50%, #000 75%, transparent 75%, transparent 100%);
  background-size: 6px 6px;
  z-index: 1;
}
@keyframes stroke {
  0% {
    fill: rgba(72, 138, 20, 0);
    stroke: rgba(54, 95, 160, 1);
    stroke-dashoffset: 25%;
    stroke-dasharray: 0 50%;
    stroke-width: 0.8;
  }
  50% {
    fill: rgba(72, 138, 20, 0);
    stroke: rgba(54, 95, 160, 1);
    stroke-width: 1.2;
  }
  70% {
    fill: rgba(72, 138, 20, 0);
    stroke: rgba(54, 95, 160, 1);
    stroke-width: 1.5;
  }
  90%,
  100% {
    fill: rgba(72, 138, 204, 1);
    stroke: rgba(54, 95, 160, 0);
    stroke-dashoffset: -25%;
    stroke-dasharray: 50% 0;
    stroke-width: 0;
  }
}
@keyframes move {
  80%,
  100% {
    box-shadow: -60px 0 0 0.5px rgba(255, 255, 255, 0.5);
  }
}

@keyframes move2 {
  80%,
  100% {
    box-shadow: -100px 0 0 0.5px rgba(255, 255, 255, 0.2);
  }
}

@keyframes moveMain {
  42% {
    transform: skewX(-10deg) translate(40px, 0);
  }
}

.ghost::before,
.ghost::after {
  content: "";
  position: absolute;
  background: #fff;
  border-radius: 50%;
}
@media screen and (max-width: 750px){
  .about-main {
    background-color: black;
    height: calc(100% - 48px);
  }
  .info {
    padding: 20px 0 0 20px;
  }
  .info-item {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
  }
  .info-title {
    position: relative;
    text-align: right;
    font-size: 22px;
    line-height: 22px;
    color: white;
    letter-spacing: 5px;
    margin: 0;
    display: inline-block;
    width: 100px;
  }
  svg {
    width: 180px;
    height: 32px;
  }
  svg text {
    text-transform: uppercase;
    animation: stroke 5s infinite alternate;
    letter-spacing: 5px;
    font-size: 22px;
  }
  .reason {
    color: white;
    /*margin: auto;*/
    padding-top: 30px;
    font-size: 16px;
  }
  .ghost {
    position: relative;
    width: 40px;
    height: 60px;
    background: radial-gradient(circle at 30px 20px,#000,#000 4px,transparent 4px),
    radial-gradient(circle at 20px 20px, #000, #000 4px, transparent 4px),
    radial-gradient(circle at 25px 25px, #fff, #fff);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin: auto;
    border-radius: 20px 20px 20px 10px;
    transform: skewX(-10deg);
    animation: moveMain 1.2s infinite ease-out;
  }
  .ghost::before {
    width: 10px;
    height: 10px;
    top: 25px;
    left: -5px;
    box-shadow: 0 0 0 1px #fff;
    animation: move 1.2s infinite ease-in;
  }
  .ghost::after {
    width: 15px;
    height: 12px;
    top: 48px;
    left: -5px;
    box-shadow: 0 0 0 1px #fff;
    animation: move2 1.2s infinite ease-in;
  }
}
@media screen and (min-width: 751px){
  .about-main {
    display: flex;
    background-color: black;
    height: calc(100% - 3.6rem);
    align-items: center;
    justify-content: center;
  }
  .info {
    flex: 0 0 300px;
    padding-right: 50px;
  }
  .info-item {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
  }
  .info-title {
    position: relative;
    text-align: right;
    font-size: 24px;
    line-height: 24px;
    color: white;
    letter-spacing: 5px;
    margin: 0;
    display: inline-block;
    width: 100px;
  }
  svg {
    width: 200px;
    height: 32px;
  }
  svg text {
    text-transform: uppercase;
    animation: stroke 5s infinite alternate;
    letter-spacing: 5px;
    font-size: 24px;
  }
  .reason {
    flex: auto;
    max-width: 700px;
    color: white;
    padding-left: 100px;
    font-size: 20px;
  }
  .ghost {
    position: relative;
    width: 80px;
    height: 120px;
    background: radial-gradient(circle at 60px 40px,#000,#000 7px,transparent 7px),
    radial-gradient(circle at 40px 40px, #000, #000 7px, transparent 7px),
    radial-gradient(circle at 50px 50px, #fff, #fff);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    /*margin: auto;*/
    border-radius: 40px 40px 60px 20px;
    transform: skewX(-10deg);
    animation: moveMain 1.2s infinite ease-out;
  }
  .ghost::before {
    width: 20px;
    height: 20px;
    top: 50px;
    left: -10px;
    box-shadow: 0 0 0 1px #fff;
    animation: move 1.2s infinite ease-in;
  }
  .ghost::after {
    width: 30px;
    height: 25px;
    top: 95px;
    left: -10px;
    box-shadow: 0 0 0 1px #fff;
    animation: move2 1.2s infinite ease-in;
  }
}


</style>
